CONFIG_XEN_NETDEV_FRONTEND=y
# CONFIG_XEN_BLKDEV_TAP is not set
# CONFIG_XEN_TPMDEV_FRONTEND is not set
-# CONFIG_XEN_SHADOW_MODE is not set
CONFIG_XEN_SCRUB_PAGES=y
CONFIG_XEN_DISABLE_SERIAL=y
CONFIG_HAVE_ARCH_ALLOC_SKB=y
CONFIG_XEN_NETDEV_FRONTEND=y
# CONFIG_XEN_BLKDEV_TAP is not set
# CONFIG_XEN_TPMDEV_FRONTEND is not set
-# CONFIG_XEN_SHADOW_MODE is not set
CONFIG_XEN_SCRUB_PAGES=y
CONFIG_XEN_DISABLE_SERIAL=y
CONFIG_HAVE_ARCH_ALLOC_SKB=y
CONFIG_XEN_NETDEV_FRONTEND=y
# CONFIG_XEN_BLKDEV_TAP is not set
# CONFIG_XEN_TPMDEV_FRONTEND is not set
-# CONFIG_XEN_SHADOW_MODE is not set
CONFIG_XEN_SCRUB_PAGES=y
CONFIG_XEN_DISABLE_SERIAL=y
CONFIG_HAVE_ARCH_ALLOC_SKB=y
CONFIG_XEN_NETDEV_FRONTEND=y
# CONFIG_XEN_BLKDEV_TAP is not set
# CONFIG_XEN_TPMDEV_FRONTEND is not set
-# CONFIG_XEN_SHADOW_MODE is not set
CONFIG_XEN_SCRUB_PAGES=y
CONFIG_XEN_DISABLE_SERIAL=y
CONFIG_HAVE_ARCH_ALLOC_SKB=y
CONFIG_XEN_NETDEV_FRONTEND=y
# CONFIG_XEN_BLKDEV_TAP is not set
# CONFIG_XEN_TPMDEV_FRONTEND is not set
-# CONFIG_XEN_SHADOW_MODE is not set
CONFIG_XEN_SCRUB_PAGES=y
CONFIG_XEN_DISABLE_SERIAL=y
CONFIG_HAVE_ARCH_ALLOC_SKB=y
CONFIG_XEN_NETDEV_FRONTEND=y
# CONFIG_XEN_BLKDEV_TAP is not set
# CONFIG_XEN_TPMDEV_FRONTEND is not set
-# CONFIG_XEN_SHADOW_MODE is not set
CONFIG_XEN_SCRUB_PAGES=y
CONFIG_XEN_DISABLE_SERIAL=y
CONFIG_HAVE_ARCH_ALLOC_SKB=y
.ascii ",PAE=yes"
#else
.ascii ",PAE=no"
-#endif
-#ifdef CONFIG_XEN_SHADOW_MODE
- .ascii ",SHADOW=translate"
#endif
.ascii ",LOADER=generic"
.byte 0
#endif
#endif
-#ifndef CONFIG_XEN_SHADOW_MODE
void xen_l1_entry_update(pte_t *ptr, pte_t val)
{
mmu_update_t u;
BUG_ON(HYPERVISOR_mmu_update(&u, 1, NULL, DOMID_SELF) < 0);
}
#endif /* CONFIG_X86_64 */
-#endif /* CONFIG_XEN_SHADOW_MODE */
void xen_machphys_update(unsigned long mfn, unsigned long pfn)
{
#endif /* CONFIG_SMP */
-#ifndef CONFIG_XEN_SHADOW_MODE
void xen_pgd_pin(unsigned long ptr)
{
struct mmuext_op op;
BUG_ON(HYPERVISOR_mmuext_op(&op, 1, NULL, DOMID_SELF) < 0);
}
#endif /* CONFIG_X86_64 */
-#endif /* CONFIG_XEN_SHADOW_MODE */
void xen_set_ldt(unsigned long ptr, unsigned long len)
{
kmem_cache_free(pgd_cache, pgd);
}
-#ifndef CONFIG_XEN_SHADOW_MODE
void make_lowmem_page_readonly(void *va, unsigned int feature)
{
pte_t *pte;
va = (void *)((unsigned long)va + PAGE_SIZE);
}
}
-#endif /* CONFIG_XEN_SHADOW_MODE */
static inline void pgd_walk_set_prot(void *pt, pgprot_t flags)
{
help
The TPM-device frontend driver.
-config XEN_SHADOW_MODE
- bool "Fake shadow mode"
- default n
- help
- Fakes out a shadow mode kernel
-
-
config XEN_SCRUB_PAGES
bool "Scrub memory before freeing it to Xen"
default y
void xen_tlb_flush(void);
void xen_invlpg(unsigned long ptr);
-#ifndef CONFIG_XEN_SHADOW_MODE
void xen_l1_entry_update(pte_t *ptr, pte_t val);
void xen_l2_entry_update(pmd_t *ptr, pmd_t val);
void xen_l3_entry_update(pud_t *ptr, pud_t val); /* x86_64/PAE */
void xen_pmd_unpin(unsigned long ptr); /* x86_64 only */
void xen_pte_pin(unsigned long ptr);
void xen_pte_unpin(unsigned long ptr);
-#else
-#define xen_l1_entry_update(_p, _v) set_pte((_p), (_v))
-#define xen_l2_entry_update(_p, _v) set_pgd((_p), (_v))
-#define xen_pgd_pin(_p) ((void)0)
-#define xen_pgd_unpin(_p) ((void)0)
-#define xen_pte_pin(_p) ((void)0)
-#define xen_pte_unpin(_p) ((void)0)
-#endif
void xen_set_ldt(unsigned long ptr, unsigned long bytes);
void xen_machphys_update(unsigned long mfn, unsigned long pfn);
#define set_pte_atomic(pteptr, pteval) set_pte(pteptr,pteval)
-#ifndef CONFIG_XEN_SHADOW_MODE
#define set_pmd(pmdptr, pmdval) xen_l2_entry_update((pmdptr), (pmdval))
-#else
-#define set_pmd(pmdptr, pmdval) (*(pmdptr) = (pmdval))
-#endif
#define ptep_get_and_clear(mm,addr,xp) __pte_ma(xchg(&(xp)->pte_low, 0))
#define pte_same(a, b) ((a).pte_low == (b).pte_low)
} \
} while (0)
-#ifdef CONFIG_XEN_SHADOW_MODE
-# define set_pmd(pmdptr,pmdval) \
- set_64bit((unsigned long long *)(pmdptr),pmd_val(pmdval))
-# define set_pud(pudptr,pudval) \
- (*(pudptr) = (pudval))
-#else
-# define set_pmd(pmdptr,pmdval) \
+#define set_pmd(pmdptr,pmdval) \
xen_l2_entry_update((pmdptr), (pmdval))
-# define set_pud(pudptr,pudval) \
+#define set_pud(pudptr,pudval) \
xen_l3_entry_update((pudptr), (pudval))
-#endif
/*
* Pentium-II erratum A13: in PAE mode we explicitly have to flush